package com.ncsc.lmis.model;
// Generated Feb 25, 2014 11:44:39 PM by Hibernate Tools 3.4.0.CR1


import java.math.BigDecimal;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * SysApproveLevelRateVehicleTypeDcc generated by hbm2java
 */
@Entity
@Table(name="sys_approve_level_rate_vehicle_type_dcc"
    ,catalog="lmis"
)
public class SysApproveLevelRateVehicleTypeDcc  implements java.io.Serializable {


     private SysApproveLevelRateVehicleTypeDccId id;
     private SysVehicleGearType sysVehicleGearType;
     private SysApproveLevelRateVehicleType sysApproveLevelRateVehicleType;
     private Short vehicleLifeMinYear;
     private Short vehicleLifeMaxYear;
     private Short statusIsAllowDc;
     private Short dcVehicleLifeMinYear;
     private Short dcVehicleLifeMaxYear;
     private BigDecimal dcMaxVal;
     private Short statusIsUsedVehicleRate;
     private BigDecimal notUsedRateMinVal;
     private BigDecimal notUsedRateMaxVal;

    public SysApproveLevelRateVehicleTypeDcc() {
    }

	
    public SysApproveLevelRateVehicleTypeDcc(SysApproveLevelRateVehicleTypeDccId id, SysApproveLevelRateVehicleType sysApproveLevelRateVehicleType) {
        this.id = id;
        this.sysApproveLevelRateVehicleType = sysApproveLevelRateVehicleType;
    }
    public SysApproveLevelRateVehicleTypeDcc(SysApproveLevelRateVehicleTypeDccId id, SysVehicleGearType sysVehicleGearType, SysApproveLevelRateVehicleType sysApproveLevelRateVehicleType, Short vehicleLifeMinYear, Short vehicleLifeMaxYear, Short statusIsAllowDc, Short dcVehicleLifeMinYear, Short dcVehicleLifeMaxYear, BigDecimal dcMaxVal, Short statusIsUsedVehicleRate, BigDecimal notUsedRateMinVal, BigDecimal notUsedRateMaxVal) {
       this.id = id;
       this.sysVehicleGearType = sysVehicleGearType;
       this.sysApproveLevelRateVehicleType = sysApproveLevelRateVehicleType;
       this.vehicleLifeMinYear = vehicleLifeMinYear;
       this.vehicleLifeMaxYear = vehicleLifeMaxYear;
       this.statusIsAllowDc = statusIsAllowDc;
       this.dcVehicleLifeMinYear = dcVehicleLifeMinYear;
       this.dcVehicleLifeMaxYear = dcVehicleLifeMaxYear;
       this.dcMaxVal = dcMaxVal;
       this.statusIsUsedVehicleRate = statusIsUsedVehicleRate;
       this.notUsedRateMinVal = notUsedRateMinVal;
       this.notUsedRateMaxVal = notUsedRateMaxVal;
    }
   
     @EmbeddedId

    
    @AttributeOverrides( {
        @AttributeOverride(name="vehicleType01No", column=@Column(name="VEHICLE_TYPE_01_NO", nullable=false) ), 
        @AttributeOverride(name="approvedLevelNo", column=@Column(name="APPROVED_LEVEL_NO", nullable=false) ), 
        @AttributeOverride(name="seqNo", column=@Column(name="SEQ_NO", nullable=false) ) } )
    public SysApproveLevelRateVehicleTypeDccId getId() {
        return this.id;
    }
    
    public void setId(SysApproveLevelRateVehicleTypeDccId id) {
        this.id = id;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="VEHICLE_GEAR_TYPE_NO")
    public SysVehicleGearType getSysVehicleGearType() {
        return this.sysVehicleGearType;
    }
    
    public void setSysVehicleGearType(SysVehicleGearType sysVehicleGearType) {
        this.sysVehicleGearType = sysVehicleGearType;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumns( { 
        @JoinColumn(name="VEHICLE_TYPE_01_NO", referencedColumnName="VEHICLE_TYPE_01_NO", nullable=false, insertable=false, updatable=false), 
        @JoinColumn(name="APPROVED_LEVEL_NO", referencedColumnName="APPROVED_LEVEL_NO", nullable=false, insertable=false, updatable=false) } )
    public SysApproveLevelRateVehicleType getSysApproveLevelRateVehicleType() {
        return this.sysApproveLevelRateVehicleType;
    }
    
    public void setSysApproveLevelRateVehicleType(SysApproveLevelRateVehicleType sysApproveLevelRateVehicleType) {
        this.sysApproveLevelRateVehicleType = sysApproveLevelRateVehicleType;
    }

    
    @Column(name="VEHICLE_LIFE_MIN_YEAR")
    public Short getVehicleLifeMinYear() {
        return this.vehicleLifeMinYear;
    }
    
    public void setVehicleLifeMinYear(Short vehicleLifeMinYear) {
        this.vehicleLifeMinYear = vehicleLifeMinYear;
    }

    
    @Column(name="VEHICLE_LIFE_MAX_YEAR")
    public Short getVehicleLifeMaxYear() {
        return this.vehicleLifeMaxYear;
    }
    
    public void setVehicleLifeMaxYear(Short vehicleLifeMaxYear) {
        this.vehicleLifeMaxYear = vehicleLifeMaxYear;
    }

    
    @Column(name="STATUS_IS_ALLOW_DC")
    public Short getStatusIsAllowDc() {
        return this.statusIsAllowDc;
    }
    
    public void setStatusIsAllowDc(Short statusIsAllowDc) {
        this.statusIsAllowDc = statusIsAllowDc;
    }

    
    @Column(name="DC_VEHICLE_LIFE_MIN_YEAR")
    public Short getDcVehicleLifeMinYear() {
        return this.dcVehicleLifeMinYear;
    }
    
    public void setDcVehicleLifeMinYear(Short dcVehicleLifeMinYear) {
        this.dcVehicleLifeMinYear = dcVehicleLifeMinYear;
    }

    
    @Column(name="DC_VEHICLE_LIFE_MAX_YEAR")
    public Short getDcVehicleLifeMaxYear() {
        return this.dcVehicleLifeMaxYear;
    }
    
    public void setDcVehicleLifeMaxYear(Short dcVehicleLifeMaxYear) {
        this.dcVehicleLifeMaxYear = dcVehicleLifeMaxYear;
    }

    
    @Column(name="DC_MAX_VAL", precision=15)
    public BigDecimal getDcMaxVal() {
        return this.dcMaxVal;
    }
    
    public void setDcMaxVal(BigDecimal dcMaxVal) {
        this.dcMaxVal = dcMaxVal;
    }

    
    @Column(name="STATUS_IS_USED_VEHICLE_RATE")
    public Short getStatusIsUsedVehicleRate() {
        return this.statusIsUsedVehicleRate;
    }
    
    public void setStatusIsUsedVehicleRate(Short statusIsUsedVehicleRate) {
        this.statusIsUsedVehicleRate = statusIsUsedVehicleRate;
    }

    
    @Column(name="NOT_USED_RATE_MIN_VAL", precision=15)
    public BigDecimal getNotUsedRateMinVal() {
        return this.notUsedRateMinVal;
    }
    
    public void setNotUsedRateMinVal(BigDecimal notUsedRateMinVal) {
        this.notUsedRateMinVal = notUsedRateMinVal;
    }

    
    @Column(name="NOT_USED_RATE_MAX_VAL", precision=15)
    public BigDecimal getNotUsedRateMaxVal() {
        return this.notUsedRateMaxVal;
    }
    
    public void setNotUsedRateMaxVal(BigDecimal notUsedRateMaxVal) {
        this.notUsedRateMaxVal = notUsedRateMaxVal;
    }




}


